home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 8
/
Aminet 8 (1995)(GTI - Schatztruhe)[!][Oct 1995].iso
/
Aminet
/
comm
/
tcp
/
ATCP_sdk_40_gc.lha
/
AmiTCP-4.0
/
AmiTCP-sdk-40.readme
next >
Wrap
Text File
|
1994-10-19
|
11KB
|
266 lines
Short: SDK for the AmiTCP/IP protocol stack
Type: comm/net
Uploader: AmiTCP-Group@nsdi.fi
Author: AmiTCP-Group@ndsi.fi (Network Solutions Development Inc.)
Version: Release 4.0
This archive contains include files, some development tools, link
libraries (with source) and programming examples for AmiTCP/IP 4.0.
AmiTCP/IP is propiertary, copyrighted product of the NSDi - Network
Solutions Development Inc, Finland. See the file 'LICENCE.SDK'
included in the archive for the licence conditions.
See AmiTCP-demo-40.readme for further information about AmiTCP/IP.
* Bug reports
Send any bug reports to <AmiTCP-Bug@nsdi.fi>.
* New Features, enchancements and bug fixes on each release of the SDK:
NOTE: AmiTCP itself is not included in the SDK archive, but the
relevant (from the programmers point of view) new features and bug
fixes are mentioned here for completeness. 3.0 beta releases are not
mentioned in this list for clarity and to avoid unnecessary confusion.
New Features on 4.0:
* AmiTCP:
- Added new function: GetSocketEvents().
- Added the link level address handling, changed if_type to use
hardware types.
- Added new sana-II errors to the error lists.
- Configured domain names are now used on internal host
searches, too.
- Added error messages to startup failures.
- Early error messages are now printed to the console.
- db/resolv.conf is now read for DOMAIN and NAMESERVER entries.
- db/netdb is not read any more, the individual files (hosts,
protocols, networks, sercives, resolv.conf and inet.access)
are read explicitly.
- WITH keyword is removed from netdb parsing
- Removed ARexx variables TASKNAME and NTHBASE (they were
obsolete).
- Added new API function GetSocketEvents().
- Added new SocketBaseTagList() tag SBTC_SIGEVENTMASK.
- Added new socket option SO_EVENTMASK. Setting this option
will set the ASYNC mode on the socket also.
- Socket owner is now set by default, _except_ after
ObtainSocket().
- FIOSETOWN ioctl now demands the caller to set itself as the
owner.
- Added new callback functionality to coordinate fd tables
with the link library. (SocketBaseTags() tag
SBTC_FDCALLBACK).
- Made name server resolving multithreaded. Now each
application has it's own set of resolver state variables.
Before any name resolvation would block if another
resolvation was in progress.
- Added h_errno setting via a pointer (SocketBaseTags() tag
SBTC_HERRNOLONGPTR).
- Changed the AmiTCP ARexx port (AMITCP) to show only after the API
is up and running (no need to "wait" on the bin/startnet).
- Added functions sendmsg() and recvmsg() for scatter/gather I/O.
- First parameter to Dup2Socket() can now be -1 to mark the fd
(the second parameter) as not to be used by AmiTCP.
- Added function SocketBaseTagList(). Tag definitions for it are
on netinclude:amitcp/socketbasetags.h.
- Added function gethostid(), which returns the primary IP
address of the host as the unique host id.
- Implemented gethostname() API function and HOSTNAME ARexx variable
(QUERY/SET). The host name is queried from the netdb and/or name
server, if it is not explicitly given in db/AmiTCP.config _or_ set
with the ARexx SET command.
- Added support for the BSD %m feature to the syslog() (%m is
replaced by the error description of current errno value), Also
changed the formatting code to not use the Exec's RawDoFmt()
allowing 32 bit values to be printed without the 'l' size
modifier.
- Only the sizes 1, 2 and 4 are now allowed for the errno
variable.
- SetErrnoPtr() has now return value. 0 on success and -1
otherwise. The _old_ errno indicates the error causing the
failure.
- "new" interface naming style (eg. slip.device/0 -> sl0).
* netinclude:
- Removed KERNEL specific definitions.
- Added files stdio.h and fcntl.h supporing DOS stdio if
USE_DOSIO is defined. Otherwise they include the original
files from the INCLUDE:.
NOTE: socket stdio does not work with the USE_DOSIO. SAS/C
stdio must be used, if the sockets are to be used via the
stdio functions.
- Added files: sys/file.h, net/if_types.h, net/if_dl.h
- updated: device/sana2.h, devices/sana2.i,
devices/sana2specialstaats.h, devices/sana2specialstats.i
- Added prototype, pragma, fd entry and inline function for the new
GetSocketEvents() function.
- (sys/socket.c):
Added asynchronous socket event codes and a new socket option to
set per socket event mask.
- (amitcp/socketbasetags.h):
Added tag code for event notification signal mask
(SBTC_SIGEVENTMASK).
- (sys/syslog.h):
Removed AmiTCP's internal log path names.
- Added arpa protocol headers (arpa/ftp.h, arpa/nameser.h,
arpa/tftp.h and arpa/telnet.h) to the distribution.
- Added/deleted some files.
- Added SocketBaseTagList() definitions to
amitcp/socketbasetags.h.
- GCC: Added inline functions from clib/socket_inlines.h to
inline/socket.h, since those had to be modified for gcc.
Generated big list of defines to make possible to use local
`SocketBase' variable in calls to bsdsocket.library calls.
This feature is invoked defining SOCKETBASE_IN_CONTEXT.
- Added syslog.h (includes sys/syslog.h) for source
compatibility.
- SAS/C: inline functions are defined only if OPTINLINE is
used, netlib stubs are used otherwise.
- Added new prototypes and declarations for the
usergroup.library and its link library (grp.h, pwd.h,
unistd.h, utmp.h, clib/netlib_protos.h).
- Changes for the short interface names, removed interface
tags.
- Added include files for the netinfo.device.
- Added RPC include directories rpc and rpcsvc.
* net.lib:
- Added tzset() to the timerinit.c to override the one from
the SAS/C sc.lib. ENV:TZ is just once, or not at all if
locale.library is present.
- Added dosio_init.c, dosio_sprintf.c.
- Added compiling the USE_DOSIO versions of the libraries (the
names of the USE_DOSIO versions contain 'd' after the base
name of the library, for example: net.lib -> netd.lib).
- Added functions: link_addr(), link_ntoa().
- Updated to open version 4 of the bsdsocket.library.
- Moved usr.lib functionality to here.
- Added implementation of SAS/C level 1 I/O functions, which
allows stdio on sockets (printf(), and a like).
- Integrated inetd daemon startup code to here. Includes
functions init_inet_daemon() and set_socket_stdio(). See
src/examples/serv for an example.
- Added some unix style functions (utime(), popen(), sleep()
etc.). See doc/netlib.doc for a full list and a reference.
- Added real h_errno variable.
- Added rcmd() and resvport(), removed getpwuid() and getgrgid().
- Added syslog() support functions: openlog(), closelog() and
setlogmask().
- Removed errlst.c (error tables are now inside the AmiTCP to
decrease overall memory usage).
- Removed gethostname(), now implemented in the AmiTCP.
- Added strerror().
- Added perror() and stubs for the inline functions (if the
inlining is not done).
- Program name is passed to the AmiTCP at startup. It is used
in the syslog() messages.
- New function herror() will print the host error code set
after host resolving failure (uses SocketBaseTags()).
- New function GetHErrno() will return the host error code
using the SocketBaseTags().
* libs/usergroup.library:
- Added a new function call getcredentials() which returns all
credential for a process, updated library version to 4.
- New library managing the user/group information.
- The default user is now "nobody" (before it was "root").
* devs/netinfo.device:
- New device, which handles the actual user/group database
files.
* src/examples/serv:
- New example of stdio and inetd usage.
* rpc.lib:
- AmiTCP implementation of the Sun RPC 4.0.
- Added support for the USE_DOSIO. Now a
special version of the rpclib using the dosio is compiled by
default (rpcdr.lib). The dosio version of the rpclib uses BPTR
file descriptors (dos.library files) instead of FILE * (link
library stdio files) with the xdrstdio_create().
Using rpcdr.lib and netd.lib with a typical RPC program makes it
5k smaller wrt. link library stdio.
* help/RPC.guide:
- Full documentation for the RPC in the AmigaGuide format.
* rcsrev:
- New development utility, which creates standard _rev.h files
from some files RCS id.
* src/devtools, src/examples:
- New directories to clean up the directory structure.
* portmap:
- RPC program,version to port mapper, needed to be run before
any RPC based servers.
* rpcinfo:
- Utility to show RPC bindings on a portmap on some host.
Fixed Bugs on 4.0:
* AmiTCP:
- Fixed bug with configuration string setting. Too small buffer
restricted the configuration string sizes to less than 24 bytes.
- Fixed syslog message level handling. It was broken if the facility
code was present.
- Changed gethostbyname() not to treate the name as dot notation IP
address based on the first digit only. Full check for the dot
notation is now made.
- Fixed bug in getservbyname() which now checks the protocol
string.
- Fixed the route dumping bug.
- Logging information is now appended to the end of the old
log file.
* net.lib:
- Added priority to usergroup autodestructor function.
* inetd:
- Fixed bugs in server argument parsing. Before any more than
one argument would not have worked. (Thanks to Magnus Lilja
for pointing this out).
New Features on 2.3:
* AmiTCP:
- New ARexx command "KILL" and a new script, bin/stopnet,
which sends this command to AmiTCP, causing it to try to
stop all networking applications, and if successfull,
itself, too.
Fixed Bugs on 2.3:
* AmiTCP:
- Removed the incorrect use of M_EOR, which caused fragmented
packets to be truncated.
New Features on 2.2:
* AmiTCP:
- The interactive sessions have now a higher priority when
using rh(c)slip.device
New Features on 2.1:
* Inet-handler:
- With Inet-Handler you can use AmigaDOS IO to access TCP protocol
* AmiTCP:
- A timestamp is added to the log messages
- Faster checksum calculation implemented in assembler
* net.lib:
- User and group database handling routines are added to the
net.lib. Release includes example databases for `ls' and `finger'
utilities, which use these databases
- A real gettimeofday() using locale is also added
EOF